首页 > 试题广场 >

求最小公倍数

[编程题]求最小公倍数
  • 热度指数:347125 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。

数据范围:

输入描述:

输入两个正整数A和B。



输出描述:

输出A和B的最小公倍数。

示例1

输入

5 7

输出

35
示例2

输入

2 4

输出

4
function func(line) {
  // 取出两个正整数a,b
  const [a, b] = line.split(" ").map(Number);
  // 从最大的开始遍历,到a*b结束
  const max = Math.max(a, b);
  for (let i = max; i <= a * b; i++) {
    // 第一个可以同时整除两个数的便是最小公倍数
    if (i % a === 0 && i % b === 0) {
      console.log(i);
      break;
    }
  }
}
while ((line = readline())) {
  func(line);
}

发表于 2022-06-03 22:10:14 回复(0)
var read;
while(read = readline()) {
    var r = read.split(' ')
   console.log(getResult(r))
}

function getResult(r) {
    var m = r[0]
    var n = r[1]
    var min = Math.min(...r)
    // 求最大公约数
    var y
    for(var i = 0; i <= min; i++){
        if(m % i === 0 && n % i === 0) {
            y = i
        }
    }
    if(y) {
        // 最大公倍数 = m*n/最小公倍数
        return (m*n)/y
    }
}
发表于 2021-10-03 00:33:09 回复(0)
最小公倍数 = 两数的积 / 最大公约数
while (line = readline()) {
    var lines = line.split(' ');
    var a = parseInt(lines[0]);
    var b = parseInt(lines[1]);
    
    var minNum = Math.min(a, b);
    var maxY = 1
    for(var i = 2; i<= minNum; i ++) {
        if(a % i === 0 && b % i === 0) {
            maxY = i;
        }
    }
    print(a * b / maxY);
}

发表于 2021-07-20 10:28:46 回复(0)

问题信息

难度:
3条回答 78069浏览

热门推荐

通过挑战的用户

查看代码